package com.vhans.db.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.vhans.core.domain.BHelp;
import com.vhans.db.model.dto.ConditionDTO;
import com.vhans.db.model.vo.agreement.*;
import com.vhans.db.model.vo.agreement.help.HelpAgreementVO;
import com.vhans.db.model.vo.agreement.help.HelpInfoVO;
import com.vhans.db.model.vo.agreement.help.HelpVO;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * 【帮助】Mapper接口
 *
 * @author vhans
 * @date 2023-04-10
 */
@Repository
public interface BHelpMapper extends BaseMapper<BHelp> {
    /**
     * 查询帮助列表
     *
     * @param condition 条件
     * @return 帮助列表
     */
    List<HelpVO> selectHelpVO(@Param("condition") ConditionDTO condition);

    /**
     * 根据id查询帮助信息
     *
     * @param helpId 帮助id
     * @return 帮助信息
     */
    HelpInfoVO selectHelpInfoById(@Param("helpId") Integer helpId);

    /**
     * 查看首页帮助列表
     *
     * @return 首页帮助列表
     */
    List<AgreementHomeListVO> listHelpHomeVO();

    /**
     * 根据id查询约起中心帮助
     *
     * @param helpId 帮助id
     * @return 首页帮助
     */
    HelpAgreementVO selectHelpAgreementById(@Param("helpId") Integer helpId);

    /**
     * 查询上一篇帮助
     *
     * @param helpId 帮助id
     * @return 上一篇帮助
     */
    AgreementPaginationVO selectLastHelp(@Param("helpId") Integer helpId);

    /**
     * 查询下一篇帮助
     *
     * @param helpId 帮助id
     * @return 下一篇帮助
     */
    AgreementPaginationVO selectNextHelp(@Param("helpId") Integer helpId);

    /**
     * 查询过期的帮助
     */
    List<Integer> selectHelpExpire();
}
